]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
Revert "overviewControls: Don't allow appearing controls to "pop in""
authorJasper St. Pierre <jstpierre@mecheye.net>
Thu, 26 Sep 2013 20:20:06 +0000 (16:20 -0400)
committerJasper St. Pierre <jstpierre@mecheye.net>
Thu, 26 Sep 2013 20:20:06 +0000 (16:20 -0400)
This reverts commit e31693bbeea706bc646298d935e5e55e9ef01565.

This doesn't properly adjust the allocation, leading to an unbalanced
overview where things aren't centered properly. Just revert for now,
and we'll rethink this next cycle.

js/ui/overviewControls.js

index f5314762eace27b9f2a5c3c1b69bc8e9a19ed3c1..c16c4ac54c37ef82789883d8e9489daa4fcf5bf1 100644 (file)
@@ -208,12 +208,23 @@ const SlidingControl = new Lang.Class({
     slideIn: function() {
         this.visible = true;
         this._updateTranslation();
+        // we will update slideX and the translation from pageEmpty
     },
 
     slideOut: function() {
         this.visible = false;
         this._updateTranslation();
+        // we will update slideX from pageEmpty
     },
+
+    pageEmpty: function() {
+        // When pageEmpty is received, there's no visible view in the
+        // selector; this means we can now safely set the full slide for
+        // the next page, since slideIn or slideOut might have been called,
+        // changing the visiblity
+        this.layout.slideX = this.getSlide();
+        this._updateTranslation();
+    }
 });
 
 const ThumbnailsSlider = new Lang.Class({
@@ -589,14 +600,18 @@ const ControlsManager = new Lang.Class({
             return;
 
         let activePage = this.viewSelector.getActivePage();
-
         let dashVisible = (activePage == ViewSelector.ViewPage.WINDOWS ||
                            activePage == ViewSelector.ViewPage.APPS);
-        if (!dashVisible)
+        let thumbnailsVisible = (activePage == ViewSelector.ViewPage.WINDOWS);
+
+        if (dashVisible)
+            this._dashSlider.slideIn();
+        else
             this._dashSlider.slideOut();
 
-        let thumbnailsVisible = (activePage == ViewSelector.ViewPage.WINDOWS);
-        if (!thumbnailsVisible)
+        if (thumbnailsVisible)
+            this._thumbnailsSlider.slideIn();
+        else
             this._thumbnailsSlider.slideOut();
     },
 
@@ -609,16 +624,8 @@ const ControlsManager = new Lang.Class({
     },
 
     _onPageEmpty: function() {
-        let activePage = this.viewSelector.getActivePage();
-
-        let dashVisible = (activePage == ViewSelector.ViewPage.WINDOWS ||
-                           activePage == ViewSelector.ViewPage.APPS);
-        if (dashVisible)
-            this._dashSlider.slideIn();
-
-        let thumbnailsVisible = (activePage == ViewSelector.ViewPage.WINDOWS);
-        if (thumbnailsVisible)
-            this._thumbnailsSlider.slideIn();
+        this._dashSlider.pageEmpty();
+        this._thumbnailsSlider.pageEmpty();
 
         this._updateSpacerVisibility();
     }